package com.duoec.magichour.service;

import com.duoec.magichour.dto.UserInfo;
import com.duoec.magichour.dto.response.UserWithFollowDto;

import java.util.List;

/**
 * Created by ycoe on 17/6/27.
 */
public interface UserFollowService {
    /**
     * 判断某个用户{userId}是否关注了{followUserId}
     * @param userId 用户id
     * @param followUserId 关注的用户id
     * @return
     */
    boolean follow(long userId, long followUserId);

    /**
     * 判断某个用户{userId}是否关注过{followUserId}
     * @param userId 当前用户
     * @param followUserId 关注的用户
     * @return
     */
    boolean isFollow(long userId, long followUserId);

    /**
     *  @param userInfo 当前登录用户
     * @param userId 查看某个用户关注的用户
     * @param pageNo 当前分页数，1为第一页
     * @param pageSize 每页最大记录数
     */
    List<UserWithFollowDto> getFollowedUserList(UserInfo userInfo, long userId, int pageNo, int pageSize);

    /**
     * 获取某个用户的粉丝列表
     * @param userInfo 当前登录用户
     * @param userId 用户ID
     * @param pageNo 当前分页数，1为第一页
     * @param pageSize 每页最大记录数
     * @return
     */
    List<UserWithFollowDto> getFansList(UserInfo userInfo, long userId, int pageNo, int pageSize);
}
